跳到主要内容

从数据中发现真相,贝叶斯方法为你的AB实验加速优化

· 阅读需 8 分钟

AB实验是一种互联网产品优化方法,通过随机分流用户到不同版本的页面或功能,比较用户行为数据,评估哪个版本能够更好的实现业务目标。

最常见的用于AB实验的假设检验方法是频率学派的零假设检测 (Null Hypothesis Significance Testing) 。但近年来贝叶斯方法因为有较好的鲁棒性和可解释性也逐渐流行起来。

零假设检测(NHST)的问题

如果大家没听说过零假设检测,也可以跳过本段,直接看后面贝叶斯方法,会发现贝叶斯方法更容易理解。

如果你曾经接触过频率学派的经典假设检验方法,你可能听过P值(P-Value)、显著性、统计功效、一类错误和二类错误这样的术语。下面以P值(显著性)为例,说明一下可解释性的问题。

如果我们想要测试A组和 B组之间有无差异,经典假设检验方法要求先形成一个相反的零假设(即A组和B组没有差异)。然后收集数据并观察A组和 B组 在没有差异这个假设的前提下,有多大的概率得到当前的数据(这个概率即P值)。如果可能性很小(通常P值小于0.05就认为是很小),则认为A组和B组之前有很大可能存在差异,即零假设检测统计意义上的显著。但这个P值(概率)并不描述A组和B组之间的差异程度,也不说明A组和B组哪个更好,只是描述这两个组是有差别的。

但作为普通AB实验使用者,我们其实想知道的是有多大的概率,A组会明显优于B组。然后我们还会想知道,A组可能比B组好多少。但是上面的统计术语都没有直接解释我们的疑问。 大多数人可能会望文生义的认为『统计显著』就代表一个组比另一个组有明显的优势,然而实际上并不是这样。实际上即使是专业人士,也经常会误解 P值的真实含义。

贝叶斯方法的优势

贝叶斯方法会提供更直观和易于理解的信息,在任何情况下都能派上用场。它不依赖于零假设,大大提升了可解释性。

贝叶斯假设检验中,不同于 P值,而是通常提供以下三个数字(贝叶斯因子)解释AB实验的数据:

• P(B> A):版本B比A更好的概率。

• E(loss | B):如果选择版本B,可能的预期损失。

• E(uplift | B):如果选择版本B,可能的预期收益。

E(loss | B)和 E(uplift | B)以相同单位的方式度量测试指标。对于转化情况,这是一个百分比。让我们通过使用先前的数据来查看结果:

图片

这个结果告诉我们,如果我们选择版本B,但实际上它更糟(概率为3.6%),我们预计转化率会下降0.026%。另一方面,如果我们的选择是正确的(概率为96.4%),我们可以期望获得3.3%的增益,进而将转化率提高到23%。这是一种简单的结果,团队中的成员,包括设计师和产品经理都可以很好地理解实验结果。

在取得实验数据之后,最终我们是要决定使用A还是B,所以我们需要有一个决策规则。您可以基于P(B> A)做出决策,但一个可能的更好的决策规则是仅在 E(loss | B)小于某个预定义阈值时宣布B为赢家。

另一个推荐使用贝叶斯假设检验的原因是:从模拟中的情况来看,达到同样的效果时,使用贝叶斯算法,样本量可以节省大概一半,具体的原理和计算方法,会在后续的文章中详细介绍。

图片

贝叶斯方法的缺点

贝叶斯的缺点是计算效率低。在统计学发展早期,这是一个完全无法解决的问题,因为这些计算需要用铅笔和纸完成。不过如今我们的电脑只需要不到一秒钟就可以完成这些数据计算。

再者是需要知道先验分布,才能降低样本量,目前在实践中一般都采用无信息的先验分布(例如:先验转化率取值为50%)。      

总结

FeatureProbe 团队在之前的项目经验中,也使用频率学派的零假设检测数年的时间。在使用过程中,遇到了零假设检测用户理解困难、实验不能中途停止需要特定样本量等一系列问题。作为对比,在没有统计专业人士帮助下,用户能够更好理解和使用贝叶斯方法,贝叶斯方法适用于小样本数据,可以缓解前期数据不足的问题,所以更适合用户量有限的创业公司和小型公司等优点。

作为开源项目,FeatureProbe 团队希望能够帮助更多的非统计学背景的用户,创业和中等规模的公司使用到AB实验这个强大的工具。所以选择了解释性更强,样本量更少,实现结果更快的贝叶斯方法。